package com.ruoyi.net.domain;

import io.swagger.annotations.ApiModelProperty;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 业务-L2 VPN配置-pw列表对象 busi_l2_vpn_pw
 * 
 * @author net
 * @date 2024-12-14
 */
public class BusiL2VpnPw extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    private String id;

    /**
     * L2 VPN业务主键
     */
    @Excel(name = "L2 VPN业务主键")
    @ApiModelProperty(value = "L2 VPN业务主键")
    private String l2VpnId;

    /**
     * 角色（工作、保护）
     */
    @Excel(name = "角色", readConverterExp = "1工作、2 保护 保护对")
    @ApiModelProperty(value = "角色")
    private String role;

    /**
     * 源网元id
     */
    @Excel(name = "源网元id")
    @ApiModelProperty(value = "源网元id")
    private String startElementId;

    /**
     * 宿网元id
     */
    @Excel(name = "宿网元id")
    @ApiModelProperty(value = "宿网元id")
    private String endElementId;

    /**
     * 信令类型（静态）
     */
    @Excel(name = "信令类型", readConverterExp = "静=态")
    @ApiModelProperty(value = "信令类型")
    private String signalType;

    /**
     * Tunnel选择方式（MPLS-TP、SR-TP）
     */
    @Excel(name = "Tunnel选择方式", readConverterExp = "1 MPLS-TP、2 SR-TP")
    @ApiModelProperty(value = "Tunnel选择方式")
    private String tunnelType;

    /**
     * 服务层tunnel ID(下拉)
     */
    @Excel(name = "服务层tunnel ID(下拉)")
    @ApiModelProperty(value = "服务层tunnel ID(下拉)")
    private String serviceLayerId;

    /**
     * VC ID
     */
    @Excel(name = "VC ID")
    @ApiModelProperty(value = "VC ID")
    private String vcId;

    /**
     * VC Type
     */
    @Excel(name = "VC Type")
    @ApiModelProperty(value = "VC Type")
    private String vcType;

    /**
     * VC名称 可自己定义 唯一性
     */
    @Excel(name = "VC名称")
    @ApiModelProperty(value = "VC名称")
    private String vcName;

    /**
     * 组网形态
     */
    @Excel(name = "组网形态")
    @ApiModelProperty(value = "组网形态")
    private String networkMode;

    /**
     * 隧道切换（使能、不使能）
     */
    @Excel(name = "隧道切换", readConverterExp = "使=能、不使能")
    @ApiModelProperty(value = "隧道切换")
    private String tunnelSwitch;

    /**
     * 控制字使能
     */
    @Excel(name = "控制字使能")
    @ApiModelProperty(value = "控制字使能")
    private String controlEnable;

    /**
     * 发送增加/替换VLAN ID
     */
    @Excel(name = "发送增加/替换VLAN ID")
    @ApiModelProperty(value = "发送增加/替换VLAN ID")
    private String vlanId;

    /**
     * 发送增加/替换VLAN PRI
     */
    @Excel(name = "发送增加/替换VLAN PRI")
    @ApiModelProperty(value = "发送增加/替换VLAN PRI")
    private String vlanPri;

    /**
     * pwClass 业务名称
     */
    @ApiModelProperty(value = "pwClass 业务名称")
    private String pwClassName;

    /**
     * 入标签
     */
    @ApiModelProperty(value = "入标签")
    private String outLabel;

    /**
     * 出标签
     */
    @ApiModelProperty(value = "出标签")
    private String inLabel;

    /**
     * 条目状态（0未激活 1已激活）
     */
    @Excel(name = "条目状态", readConverterExp = "0=未激活,1=已激活")
    @ApiModelProperty(value = "条目状态")
    private String status;

    /**
     * 删除标记（0正常 2删除）
     */
    private String delFlag;

    public void setId(String id) {
        this.id = id;
    }

    public String getId() {
        return id;
    }

    public void setL2VpnId(String l2VpnId) {
        this.l2VpnId = l2VpnId;
    }

    public String getL2VpnId() {
        return l2VpnId;
    }

    public void setRole(String role) {
        this.role = role;
    }

    public String getRole() {
        return role;
    }

    public void setStartElementId(String startElementId) {
        this.startElementId = startElementId;
    }

    public String getStartElementId() {
        return startElementId;
    }

    public void setEndElementId(String endElementId) {
        this.endElementId = endElementId;
    }

    public String getEndElementId() {
        return endElementId;
    }

    public void setSignalType(String signalType) {
        this.signalType = signalType;
    }

    public String getSignalType() {
        return signalType;
    }

    public void setTunnelType(String tunnelType) {
        this.tunnelType = tunnelType;
    }

    public String getTunnelType() {
        return tunnelType;
    }

    public void setServiceLayerId(String serviceLayerId) {
        this.serviceLayerId = serviceLayerId;
    }

    public String getServiceLayerId() {
        return serviceLayerId;
    }

    public void setVcId(String vcId) {
        this.vcId = vcId;
    }

    public String getVcId() {
        return vcId;
    }

    public void setVcType(String vcType) {
        this.vcType = vcType;
    }

    public String getVcType() {
        return vcType;
    }

    public void setVcName(String vcName) {
        this.vcName = vcName;
    }

    public String getVcName() {
        return vcName;
    }

    public void setNetworkMode(String networkMode) {
        this.networkMode = networkMode;
    }

    public String getNetworkMode() {
        return networkMode;
    }

    public void setTunnelSwitch(String tunnelSwitch) {
        this.tunnelSwitch = tunnelSwitch;
    }

    public String getTunnelSwitch() {
        return tunnelSwitch;
    }

    public void setControlEnable(String controlEnable) {
        this.controlEnable = controlEnable;
    }

    public String getControlEnable() {
        return controlEnable;
    }

    public void setVlanId(String vlanId) {
        this.vlanId = vlanId;
    }

    public String getVlanId() {
        return vlanId;
    }

    public void setVlanPri(String vlanPri) {
        this.vlanPri = vlanPri;
    }

    public String getVlanPri() {
        return vlanPri;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public String getStatus() {
        return status;
    }

    public void setDelFlag(String delFlag) {
        this.delFlag = delFlag;
    }

    public String getDelFlag() {
        return delFlag;
    }

    public String getPwClassName() {
        return pwClassName;
    }

    public void setPwClassName(String pwClassName) {
        this.pwClassName = pwClassName;
    }

    public String getOutLabel() {
        return outLabel;
    }

    public void setOutLabel(String outLabel) {
        this.outLabel = outLabel;
    }

    public String getInLabel() {
        return inLabel;
    }

    public void setInLabel(String inLabel) {
        this.inLabel = inLabel;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("l2VpnId", getL2VpnId())
                .append("role", getRole())
                .append("startElementId", getStartElementId())
                .append("endElementId", getEndElementId())
                .append("signalType", getSignalType())
                .append("tunnelType", getTunnelType())
                .append("serviceLayerId", getServiceLayerId())
                .append("vcId", getVcId())
                .append("vcType", getVcType())
                .append("vcName", getVcName())
                .append("networkMode", getNetworkMode())
                .append("tunnelSwitch", getTunnelSwitch())
                .append("controlEnable", getControlEnable())
                .append("vlanId", getVlanId())
                .append("vlanPri", getVlanPri())
                .append("status", getStatus())
                .append("delFlag", getDelFlag())
                .append("createBy", getCreateBy())
                .append("createTime", getCreateTime())
                .append("updateBy", getUpdateBy())
                .append("updateTime", getUpdateTime())
                .append("remark", getRemark())
                .append("pwClassName", getPwClassName())
                .append("outLabel", getOutLabel())
                .append("inLabel", getInLabel())
                .toString();
    }
}